Modern processors include significant amounts of circuitry and operate at ever increasing frequencies. The trend in processor design is towards multicore designs in which multiple independent processor cores are present on one or more semiconductor die of a processor package. By providing multiple processor cores, often of relatively simple design, workloads can be efficiently split up and executed in parallel on the different processors.
To provide power savings, when a given processor core is not being used, it can be placed into a low power state. When all processors of a given package are in a low power state, the package itself can be placed into a low power state in which deeper power savings are available, however this comes at the expense of greater latency in exiting from such low power state.
To maintain a measure of core temperature, one or more cores may have a thermal sensor associated with it. This temperature information is used in part to determine an appropriate frequency and voltage at which to operate the core. Such temperature information is used when a core wakes from a low power state to enable an appropriate voltage (and frequency) to be provided to the core. Stale temperature information obtained prior to the low power state may be unsuitable for determining an appropriate voltage at which to operate the core. Thus many processors maintain a thermal sensor powered on even when the corresponding core is in a low power state. However, this reduces the benefit of the low power state, and also prevents entry into certain deeper low power states.